Hello there,
 
Thank you for contacting Electronic Arts.
 
Sincerely apologize for any inconvenience caused to you. Please be assured that I will do my best to have your issue resolved immediate.
 
Sometimes a conflict in the updated files can prevent the game from properly identifying your CD-key. Usually, refreshing your CD-key will resolve the issue. Note that this will only correct the error if you used the same Windows account to install, update, and troubleshoot the game. If you have switched Windows accounts at any point it is recommended you uninstall, reinstall, and reupdate using the same Windows login.
 
If the issue persists, you will need to uninstall the game completely and then reinstall and reupdate to completely remove and replace corrupted files.
 
1. Uninstall Battlefield 2: Special Forces and the Battlefield 2 base game using the uninstall program, Add/Remove Programs, or manually uninstall for Battlefield 2: http://support.ea.com/cgi-bin/ea.cfg/php/enduser/std_adp.php?p_faqid=8986 and Battlefield 2 Special Forces: http://support.ea.com/cgi-bin/ea.cfg/php/enduser/std_adp.php?p_faqid=11150 
2. Install Battlefield 2.
Note: If you have the Battlefield 2 Deluxe pack, install and skip to step 3.
3. Install Battlefield 2: Special Forces.
4. Install the 1.41 full patch, which can be found here.
5. Install Battlefield 2: Armored Fury. (if applicable)
6. Install Battlefield 2: Euro Force. (if applicable)
7. Install the 1.41 full patch once again.
 
Once this is completed, try launching the game again.
 
Should you require further assistance about this or any electronic arts games in the future please feel free to email us again. You can also visit our website and review our extensive self help knowledgebase (http://support.ea.com). 
 
Sincerely, 
 
EA Rep Austin 
Electronic Arts